var postData = require('../data/post-data.js');
// 获取小程序实例
var app = getApp();

Page({

  /**
   * 页面的初始数据
   */
  data: {
    isPlayMusic: app.globalData.g_isPlayingMusic
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var id = options.id;
    this.setData({
      detailData: postData.postList[id],
      pageId: id
    });

    // 查询收藏状态
    var detailPageCollects = wx.getStorageSync('collectStatus');
    if (detailPageCollects) {
      var currentCollect = detailPageCollects[id];
      this.setData({
        collected: currentCollect
      });
    } else {
      var newDPCollects = {};
      newDPCollects[id] = false;
      wx.setStorageSync('collectStatus', newDPCollects);
    }

    // 当后台有音乐播放，切音乐id和当前页面id相匹配，则判定播放的是当前页面的背景音乐
    if (app.globalData.g_isPlayingMusic && app.globalData.g_currentMusicPlayId === id) {
      this.setData({
        isPlayMusic: true
      });
    }

    // 监听音乐播放函数
    var _self = this;
    wx.onBackgroundAudioPlay(function () {
      _self.setData({
        isPlayMusic: true
      });
      app.globalData.g_isPlayingMusic = true; // 监听到播放，将全局播放状态设为true
      app.globalData.g_currentMusicPlayId = id;
    });

    // 监听暂停
    wx.onBackgroundAudioPause(function () {
      _self.setData({
        isPlayMusic: false
      });
      app.globalData.g_isPlayingMusic = false; // 监听到暂停，将全局播放状态设为false
      app.globalData.g_currentMusicPlayId = null;
    });

    // 监听音乐停止
    wx.onBackgroundAudioStop(function () {
      _self.setData({
        isPlayMusic: false
      });
      app.globalData.g_isPlayingMusic = false; // 监听到暂停，将全局播放状态设为false
      app.globalData.g_currentMusicPlayId = null;
    })
  },
  /**
   * 收藏事件
   */
  onColletionTap() {
    // 查收藏状态，取反，更新本地存储，修改data参数值
    var detailPageCollects = wx.getStorageSync('collectStatus');
    var collecStatu = !detailPageCollects[this.data.pageId];
    detailPageCollects[this.data.pageId] = collecStatu;
    wx.setStorageSync('collectStatus', detailPageCollects)
    this.setData({
      collected: collecStatu
    });
    // 用户操作提示
    var msg = collecStatu ? '收藏成功' : '取消成功';
    wx.showToast({
      title: msg,
      icon: 'success',
      duration: 1000
    });
  },
  /**
   * 分享事件
   */
  onShareTap() {
    var itemList = [
      '分享到朋友圈',
      '分享到微信好友',
      '分享到QQ'
    ];
    wx.showActionSheet({
      itemList: itemList,
      success: function (res) {
        wx.showToast({
          title: '成功' + itemList[res.tapIndex],
          icon: 'success',
          duration: 1000
        });
      },
      fail: function (res) {
        console.log(res.errMsg);
      }
    })
  },

  /**
   * 音乐播放
   */
  onMusicTap() {

    var musicData = this.data.detailData.music;
    // 暂停音乐
    if (this.data.isPlayMusic) {
      wx.pauseBackgroundAudio();
      this.setData({
        isPlayMusic: false
      });
    } else {
      // 播放音乐
      wx.playBackgroundAudio({
        dataUrl: musicData.url,
        title: musicData.title,
        coverImgUrl: musicData.coverImg
      });
      this.setData({
        isPlayMusic: true
      });
    }

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})